package com.ingesup.caribou.server.generator;
import java.io.*;
import org.jzy3d.maths.Coord3d;
import java.util.StringTokenizer;
public class FromFiles {


	Coord3d [] ensemble3d;

	public FromFiles (String fichier){
		this.ensemble3d=calculParFichier(fichier);
		
	}

	public Coord3d[] calculParFichier(String fichier){

		int size = -1;
		float x;
		float y;
		float z;

		//lecture du fichier texte	
		try{

			//Récupération du nombre de ligne
			FileInputStream fis = new FileInputStream(fichier);
			LineNumberReader l = new LineNumberReader(       
					new BufferedReader(new InputStreamReader(fis)));
			while ((l.readLine())!=null)
			{
				size = l.getLineNumber();
			}
			l.close();    

			//La classe Coord3d vient de la librairie jzy3D
			Coord3d[] points = new Coord3d[size];           

			//Lecture du fichier
			InputStream ips=new FileInputStream(fichier); 
			InputStreamReader ipsr=new InputStreamReader(ips);
			BufferedReader br=new BufferedReader(ipsr);
			String ligne;
			int i = 0;
			while ((ligne=br.readLine())!=null){
				//System.out.println(ligne);
				StringTokenizer st = new StringTokenizer(ligne);				
				if(st.countTokens() >= 3){
					points[i] = new Coord3d(Double.parseDouble((String) st.nextElement()), Double.parseDouble((String) st.nextElement()),
							Double.parseDouble((String) st.nextElement()));
					i++;
					//System.out.println(i);
				}
			}
			br.close(); 

			return points;
		}		
		catch (Exception e){
			System.out.println(e.toString());
		}
		return null;


	}
}